package com.zhangchuchu.neohealth.entity;

import com.baomidou.mybatisplus.annotation.*;
import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Data;

import java.time.LocalDateTime;

@Data
@TableName("users") // 绑定数据库表名
public class User {

    @TableId(type = IdType.AUTO)
    private Integer id; // 用户ID（自增）

    private String username; // 用户名（唯一）

    private String nickname; // 昵称

    private String password; // 密码

    private String email; // 邮箱（唯一）

    private String phone; // 手机号（唯一）

    private String sex; // 性别

    private String avatar; // 头像

    private String region; // 地区

    private String detail; // 详细地址



    @TableField("role")
    private String role; // 角色（SUPER_ADMIN, ADMIN, USER, GUEST）

    @TableField("permission_level")
    private Integer permissionLevel; // 权限等级

    @TableField("status")
    private String status ; // 账户状态（ACTIVE / DISABLED）

    @TableField(fill = FieldFill.INSERT)
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private LocalDateTime  createdTime; // 创建时间（默认当前时间）

    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @TableField(fill = FieldFill.INSERT_UPDATE)
    private LocalDateTime  updatedTime; // 更新时间（每次更新自动刷新）

    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private LocalDateTime  lastLoginTime; // 最近登录时间


}
